<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>执行上下文栈</title>
</head>
<body>

<!-- 
    1. 依次输出什么？
        gb :undefined
        fb : 1  
        fb : 2
        fb : 3
        fe : 3
        fe : 2
        fe : 1
        ge : 1
    2. 整个过程中产生了几个执行上下文  // 5
    
 -->
<script type="text/javascript">
    console.log('global begin :'+i) // undefined
    var i = 1
    foo(1)
    function foo(i){
        if(i == 4){
            return
        }
        console.log('fb:' + i) // 1
        foo(i + 1) // 递归调用：在函数内部调用自己
        console.log('fe :' + i) // 2

    }
    console.log('ge :' + i)  // 1
</script>
</body>
</html>